Over the past several years, computer processing power has increased dramatically. With this increase in processing power, the number and types of tasks which computer systems are used to perform have also increased greatly. For example, multimedia systems, which receive, process and output information using a number of different media types, have found great popularity. In order to handle the increased types of media such as video and audio, the number and types of peripheral devices which are coupled to a computer system have also increased. Generally, a peripheral device connects to another device (e.g., a host device) which controls the operation of the peripheral device. In a typical system, the host processor is coupled to a local (e.g., host) bus. In many applications, the number of other devices which may be directly connected to the host bus is quite limited. In order to expand the versatility of such systems, one or more secondary buses are coupled to the host bus.
Peripheral devices are coupled to the secondary (peripheral) buses for communication with the host. The host processor controls the peripheral devices using the host and peripheral buses.
As the number of peripheral devices effectively coupled to the host processor increases, the complexity of controlling the various peripheral devices also increases. Moreover, as the number and complexity of functions provided by the peripheral devices expands, the operation of the peripheral devices becomes more dependent upon stability of the system. A typical peripheral bus, such as the Peripheral Component Interface (PCI) bus, operates under control of the host system. The host system may modify operating parameters of the PCI bus without notifying the peripheral device. The consequences of changing bus parameters to the operation of complex peripheral device are significant.
In the above described types of systems, the desire to provide more complicated and versatile peripheral devices competes with the desire to allow the host processor freedom to control the overall system and its operating parameters. Thus, it is desirable to provide a system having increased capability through the use of many different types of peripheral devices without limiting the operation of the host processor.